Disk-based storage devices such as hard disk drives (HDDs) are used to provide non-volatile data storage in a wide variety of different types of data processing systems. A typical HDD comprises a spindle which holds one or more flat circular storage disks, also referred to as platters. Each storage disk comprises a substrate made from a non-magnetic material, such as aluminum or glass, which is coated with one or more thin layers of magnetic material. In operation, data is read from and written to tracks of the storage disk via a read/write head that is moved precisely across the disk surface by a positioning arm as the disk spins at high speed.
The storage capacity of HDDs continues to increase, and HDDs that can store multiple terabytes (TB) of data are currently available. However, increasing the storage capacity often involves shrinking track dimensions in order to fit more tracks onto each storage disk, such that inter-track interference (ITI) becomes an important performance issue. A number of additional techniques have been developed in an attempt to further increase storage capacity. For example, a technique known as shingled magnetic recording (SMR) attempts to increase storage capacity of an HDD by “shingling” a given track over a previously written adjacent track on a storage disk. In another technique, referred to as bit-patterned media (BPM), high density tracks of magnetic islands are preformed on the surface of the storage disk, and bits of data are written to respective ones of these islands.
A conventional HDD typically comprises a read channel that includes a relatively large internal memory to process data read from the storage disk. For example, the read channel is typically configured to perform iterative error correction processes on data read from the storage disk. In one possible implementation, each bit read from the disk is converted into a multi-bit digital value that is stored in the read channel memory for error correction processing. The read channel memory is generally required to store such multi-bit digital values for several sectors of the disk simultaneously, where each sector may include, for example, 4096 bytes. If six-bit digital values are used to represent the respective bits read from the disk, the read channel memory will require 24,576 bytes of storage for each sector of disk data that it is required to store. Accordingly, as the density of the storage disk increases in terms of the number of bytes stored per disk sector, the amount of read channel memory required also increases, which can significantly increase the cost and complexity of the HDD.